package xuan.controller.meihua;

import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import xuan.configuration.result.ResponseResult;
import xuan.configuration.result.ResponseResultEnum;
import xuan.dto.liuyao.LiuYaoDto;
import xuan.dto.meihua.MeiHuaDto;
import xuan.utils.liuyao.LiuYao;
import xuan.utils.liuyao.LiuYaoSetting;
import xuan.utils.meihua.MeiHua;
import xuan.utils.meihua.MeiHuaSetting;
import xuan.vo.liuyao.LiuYaoVo;
import xuan.vo.meihua.MeiHuaVo;

/**
 * 梅花易数排盘Controller
 *
 * @author 善待
 */
@RestController
@RequestMapping("/meiHua")
public class MeiHuaController {

    /**
     * 开始排盘
     *
     * @param dto 梅花易数设置接收类
     * @return 梅花易数数据
     */
    @PostMapping("/paiPan")
    public ResponseResult<MeiHuaVo> paiPan(@RequestBody MeiHuaDto dto) {

        // 1、拷贝设置
        MeiHuaSetting setting = new MeiHuaSetting();
        BeanUtils.copyProperties(dto, setting);

        // 2、排盘
        MeiHua meiHua = new MeiHua(setting);

        // 3、拷贝数据
        MeiHuaVo vo = new MeiHuaVo();
        BeanUtils.copyProperties(meiHua, vo);

        // 4、返回数据
        return ResponseResult.result(ResponseResultEnum.SUCCESS, vo);

    }


}
